package com.tywj.lib.route

import android.app.Application
import com.alibaba.android.arouter.launcher.ARouter
import com.autocareai.lib.route.ARouterCompat

/**
 * <pre>
 *     author : June Yang
 *     time   : 2020/5/8
 *     desc   : 路由工具类
 *     version: 1.0.0
 * </pre>
 */
object RouteUtil {

    /**
     * 初始化路由
     * @param application Application对象
     * @param debug 是否处于debug模式
     */
    fun init(application: Application, debug: Boolean) {
        if (debug) {
            // 打印日志
            ARouter.openLog()
            // 开启调试模式(如果在InstantRun模式下运行，必须开启调试模式！线上版本需要关闭,否则有安全风险)
            ARouter.openDebug()
            ARouterCompat.openLog()
        }
        ARouter.init(application)
    }

    /**
     * 获取服务提供者
     */
    fun <T> getServiceProvider(service: Class<out T>): T? {
        return ARouter.getInstance().navigation(service)
    }
}